package util;

public class Pagination {
    public String toLimitClause(int totalNum){
        //向前台提供元组总数（totalNum为0不是错误）
        this.totalNum = totalNum;
        //偏移量
        int offset = (this.pageNo - 1) * this.pageSize;
        //输出LIMIT子句，注意关键词两端的空格
        return " LIMIT " + offset + "," + this.pageSize;
    }

    public Pagination(int pageSize,int pageNo){
        //防止错误赋值
        if (pageSize > 0){
            this.pageSize = pageSize;
        }else {
            this.pageSize = 5;
        }

        if (pageNo > 0){
            this.pageNo = pageNo;
        }else {
            this.pageNo = 1;
        }
    }

    //如果没有get方法，fastjson将无法读取对象属性
    public int getPageSize(){
        return pageSize;
    }

    public int getPageNo(){
        return pageNo;
    }

    public int getTotalNum(){
        return totalNum;
    }

    //每页的对象（元组）数
    private  int pageSize = 5;
    //页号
    private  int pageNo = 1;
    //对象（元组）总数
    private  int totalNum = 1;
}
